1 package activity;
2
3 import java.lang.*;
4 import javax.swing.*;
5 import java.awt.*;
6 import java.awt.event.*;
7 import attr.*;
8
9 public class ChangePasswordActivity extends JFrame implements ActionListener {
10 private User user;
11 private JPanel panel;
12 private JLabel oldLabel, newLabel;
13 private JPasswordField oldPF, newPF;
14 private JButton buttonSubmit, buttonCancel;
15
16 public ChangePasswordActivity(User user) {
17 super("Change Password");
18
19 this.setSize(500,200);
20 this.setResizable(false);
21 this.setLocationRelativeTo(null);
22
23 this.user = user;
24
25 panel = new JPanel();
26 panel.setLayout(null);
27
28 oldLabel = new JLabel("Old Password: ");
29 oldLabel.setBounds(40, 20, 150, 30);
30 oldLabel.setFont(Theme.FONT_INPUT);
31 panel.add(oldLabel);
32
33 oldPF = new JPasswordField();
34 oldPF.setBounds(160, 20, 280, 30);
35 oldPF.setFont(Theme.FONT_INPUT);
36 panel.add(oldPF);
37
38 newLabel = new JLabel("New Password: ");
39 newLabel.setBounds(40, 70, 150, 30);
40 newLabel.setFont(Theme.FONT_INPUT);
41 panel.add(newLabel);
42
43 newPF = new JPasswordField();
44 newPF.setBounds(160, 70, 280, 30);
45 newPF.setFont(Theme.FONT_INPUT);
46 panel.add(newPF);
47
48 buttonSubmit = new JButton("Change");
49 buttonSubmit.setBounds(90, 120, Theme.BUTTON_PRIMARY_WIDTH,30);
50 buttonSubmit.setFont(Theme.FONT_BUTTON);
51 buttonSubmit.setBackground(Theme.BACKGROUND_BUTTON_PRIMARY);
52 buttonSubmit.setForeground(Theme.COLOR_BUTTON_PRIMARY);
53 buttonSubmit.addActionListener(this);
54 panel.add(buttonSubmit);
55
56 buttonCancel = new JButton("Cancel");
57 buttonCancel.setBounds(300, 120, Theme.BUTTON_PRIMARY_WIDTH,30);
58 buttonCancel.setFont(Theme.FONT_BUTTON);
59 buttonCancel.setBackground(Theme.BACKGROUND_BUTTON_PRIMARY);
60 buttonCancel.setForeground(Theme.COLOR_BUTTON_PRIMARY);
61 buttonCancel.addActionListener(this);
62 panel.add(buttonCancel);
63
64 this.add(panel);
65 }
66
67 public void actionPerformed(ActionEvent ae) {
68 if (ae.getSource().equals(buttonSubmit)) {
69 user.changePassword(this, oldPF.getText(), newPF.getText());
70 }
71 else if (ae.getSource().equals(buttonCancel)) {
72 this.setVisible(false);
73 }
74 else {}
75 }
76 }